home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 4 / FM Towns Free Software Collection 4 - Disc 2.iso / heat_tst / heat.cfg < prev    next >
Text File  |  1991-10-19  |  12KB  |  499 lines

  1. /*********************************************************************
  2. /*
  3. /*                  system “Pride”
  4. /*        Super Thechnical Multi Text Sound Tool
  5. /*                      HEat                             version.1.02a
  6. /*
  7. /*          (c) Copyright 1990,1991 -- TaroPYON
  8. /*
  9. /*
  10. /*    メイン・コンフィグ・ファイル    "HEat.cfg"
  11. /*
  12. /*    TABSIZE = 4;
  13. /*
  14.  
  15. /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  16. /*    システム設定マクロ
  17. /*
  18.     ON = 1
  19.     OFF = 0
  20.     TRUE = -1
  21.     FALSE = 0
  22.  
  23. /*------------------------------------------------------------------
  24. /*    カラーコード設定
  25. /*------------------------------------------------------------------
  26.     C_BLACK        = 0
  27.     C_BLUE        = 1
  28.     C_RED        = 2
  29.     C_MAGENTA    = 3
  30.     C_GREEN        = 4
  31.     C_CYAN        = 5
  32.     C_YELLOW    = 6
  33.     C_WHITE        = 7
  34.     C_HBLACK    = 8
  35.     C_HBLUE        = 9
  36.     C_HRED        = 10
  37.     C_HMAGENTA    = 11
  38.     C_HGREEN    = 12
  39.     C_HCYAN        = 13
  40.     C_HYELLOW    = 14
  41.     C_HWHITE    = 15
  42.  
  43.     C_MBLACK    = 1
  44.     C_THROUGH    = 0
  45.  
  46.     PSET    = 0
  47.     PRESET    = 1
  48.     OR        = 2
  49.     AND        = 3
  50.     XOR        = 4
  51.     NOT        = 5
  52.     OPAQUE    = 9
  53.  
  54.     SCXMAX = 640
  55.     SCYMAX = 480
  56.  
  57.     EUP_CHK = 0
  58.  
  59. /*********************************************************************
  60. /*    起動時オプション
  61. /*    【復帰】    OPT にオプション文字列を設定して return (0) で戻る
  62. /*
  63. option {
  64.     mosget("sw","x","y")                /* マウス状態の取得
  65.     if ( sw = 1 )                        /* 左ボタンが押されている
  66.     {    OPT = "-q"
  67.         return    (0)
  68.     } else if ( sw = 3 )                /* 両方のボタンが押されている
  69.     {    OPT = "-qA"
  70.         return    (0)
  71.     }
  72.     return    (-1)                        /* オプション指定なし
  73. }
  74.  
  75.  
  76. /*******************************************************************
  77. /*    startup : 起動時(マクロ初期化 時)に実行される
  78. /*
  79. /*    【入力】ERR         パラメータエラー内容
  80. /*            HLP ! 0        ヘルプ・オプション指定あり
  81. /*            FILE        編集ファイル
  82. /*
  83. /*    【復帰】return = 0    起動
  84. /*            return ! 0    終了,TownsMENU にもどる
  85. /*
  86. /*******************************************************************
  87. startup {
  88.  
  89.     if ( STARTUP_ONLY = 0 )
  90.     {    STARTUP_ONLY = 1;
  91.         /************************************************************/
  92.         /* 半角の「¥」が「\」(バック・スラッシュ)になるが気に入らない方は下の */
  93.         /* マクロを実行しましょう。                                    */
  94.         /************************************************************/
  95. #        font_set(92,0,16,"00 41 41 22 22 14 7F 08 08 7F 08 08 08 08 00 00")
  96. #        font_set(92,0, 8,"22 22 14 3E 08 3E 08 00")
  97. #        /* ユーザーフォントは本当はデザインし直したほうがいい…。
  98. #        font_set(92,1,16,"00 41 41 22 22 14 7F 08 08 7F 08 08 08 08 00 00")
  99. #        font_set(92,1, 8,"22 22 14 3E 08 3E 08 00")
  100.         if ( HLP ! 0 )                    /* ヘルプオプションの指定あり
  101.         {    HELP_startup()
  102.             return    (-1)
  103.         } else if ( ERR ! "" )            /* パラメータエラー
  104.         {    PARA_err()
  105.             if ( VAL ! 0 ) { return    (-1) }    /* exit    */
  106.         }
  107.     }
  108.     cfg_load("console.cfg")        /* コンソール関係コンフィグロード
  109.     cfg_load("keymacro.cfg")    /* キー設定マクロ・コンフィグ・ロード
  110.     cfg_load("metakey.cfg")        /* メタキー設定ファイルロード
  111.     cfg_load("term.cfg")        /* 通信関係コンフィグ・ロード
  112.     cfg_load("heplay.cfg")        /* HEPLAY用コンフィグ・ロード
  113.  
  114.     if ( FIRST_TIME = 0 )
  115.     {    /* 初回のみ実行    */
  116.         METAKEY_set()                    /* メタキー設定
  117.         FIRST_TIME = 1;
  118.         CD_NO = 1;                        /* CD 演奏開始曲番号
  119.         CD_VOL = 127;                    /* CD ボリューム
  120.         cd_vol(CD_VOL)                    /* CD ボリューム設定
  121.         CD_MODE = 0;                    /* CD 演奏モード
  122.         cd_mode(CD_MODE)
  123. #        cfg_load("bgmset1.cfg");main()
  124.         set_blackout(_BO_TIME,"")        /* ブラックアウト・タイムの設定
  125.     }
  126.     return    (0)
  127. }
  128.  
  129. /*********************************************************************
  130. /*
  131. /*    起動時オプションによってエラーが発生した場合実行される
  132. /*
  133. /*    【入力】    ERR            エラーのあったパラメータ
  134. /*    【復帰】    return = 0    エラーは無視して続行
  135. /*                return ! 0    終了する
  136. /*
  137. PARA_err {
  138.     menu_yes_no( 112, 220, C_RED, " \(ERR):\x0Aパラメータの指定に誤りがありますが起動しますか? ")
  139.     if ( VAL > 0 )
  140.     {    return    (0)                        /* 続行    */
  141.     } else
  142.     {    return    (-1)                    /* 終了    */
  143.     }
  144. }
  145.  
  146. /*********************************************************************
  147. /*    起動時オプションに ? または -? が設定された場合に実行される
  148. /*
  149. HELP_startup {
  150.     w_init()
  151.     wind_open2("スタートアップ へるぷ チャン")
  152.     echo(" パラメータに '?' か'-?'が指定されたよ。\n\n")
  153.     echo(" オプション・スイッチはたくさんあるから書き切れないの…\n")
  154.     echo(" このメッセージは ファイル HEat.cfg に書かれてい\n")
  155.     echo("るから、\n\n")
  156.     echo(" 忘れっぽいひとは自分でメモっててネ♪\n")
  157.     wait(20)
  158.     echo("\n そんじゃ、ばいば~い");
  159.     wait(5)
  160.     wind_close()
  161. }
  162.  
  163. /*******************************************************************
  164. /*    起動時に編集するファイルがない場合に実行される
  165. /*
  166. /*    【入力】    なし
  167. /*    【復帰】    FILE    ファイル名
  168. /*
  169. DUMY_set {
  170.     file_select("FILE","編集ファイル",-1, "", "*.*",0)
  171.     if ( FILE = "" )
  172.     {    FILE = "dummy.mml"                /* ダミーファイル名
  173.     }
  174. }
  175.  
  176.  
  177. /*******************************************************************
  178. /*    終了時に実行される
  179. /*
  180. /*    【復帰】    終了時のエラーレベル
  181. /*******************************************************************
  182. ending {
  183.     return    (0)
  184. }
  185.  
  186. /*******************************************************************
  187. /*    CDプレイヤ
  188. /*******************************************************************
  189. CD_menu {
  190.  
  191.     mosget("sw","x","y")
  192.     while ( 0 )
  193.     {    
  194.         if ( CD_MODE = 1 )
  195.         {    TMP = "repeat All";
  196.         } else if ( CD_MODE = 2 )
  197.         {    TMP = "repeat One";
  198.         } else if ( CD_MODE = 3 )
  199.         {    TMP = "Shuffle";
  200.         } else
  201.         {    CD_MODE = 0;
  202.             TMP = "OFF";
  203.         }
  204.         menu2_select(x,y,"CD PLAYER MENU",
  205.             "B: Back ",
  206.             "P: Play ",
  207.             "N: Next ",
  208.             "S: Stop ",
  209.             "",
  210.             "R: Repeat [\(TMP)] ",
  211.             "V: Volume [\(CD_VOL)] "
  212.         )
  213.         if ( VAL = 0 )
  214.         {    cd_back()                    /* [BACK]
  215.             cd_vol(CD_VOL)
  216.         } else if ( VAL = 1 )            /* [PLAY]
  217.         {    menu_input("CD_NO",8,x,y,C_CYAN,"何曲め?:")
  218.             if ( VAL = 0 )
  219.             {    cd_play(CD_NO)
  220.                 cd_vol(CD_VOL)
  221.             }
  222.         } else if ( VAL = 2 )
  223.         {    cd_next()                    /* [NEXT]
  224.             cd_vol(CD_VOL)
  225.         } else if ( VAL = 3 )
  226.         {    cd_stop()                    /* [STOP]
  227.         } else if ( VAL = 5 )
  228.         {    inc(CD_MODE)
  229.             if ( CD_MODE > 3 )
  230.             {    CD_MODE = 0;
  231.             }
  232.             cd_mode(CD_MODE)
  233.         } else if ( VAL = 6 )
  234.         {                                /* [Volum]
  235.             menu_input("CD_VOL", 4, x, y, C_CYAN, " CD ボリューム:1~127")
  236.             if ( CD_VOL > 0 )
  237.             {    if ( CD_VOL < 128 )
  238.                 {    cd_vol(CD_VOL)
  239.                 }
  240.             }
  241.         } else
  242.         {    return
  243.         }
  244.     }
  245. }
  246.  
  247.  
  248. /*******************************************************************
  249. /*
  250. /*    もどり値のコマンドファンクションが実行される
  251. /*
  252. /*    ※ 変なコマンドを実行すると飛ぶので注意!!!
  253. /*
  254.  
  255.     MARK      =  13
  256.     FILE_LIST =  72
  257.     VIEW_FILE =  76
  258.     TEXT_EDIT =  77
  259.     SAVE_ALL  = 102
  260.     HEAT_EXIT = 109
  261.     MS_DOS    = 162
  262.     CONS_LOG  = 164
  263.     TERMINAL  = 801
  264.     BACK_LOG  = 804
  265.     SIDEWORK  = 903;
  266.  
  267. HELPER {
  268.     sys_getmode("MODE")
  269.     mosget("sw","x","y")
  270.     menu2_select(x,y,"何がしたいんだ???",
  271.         "S: サイドワーク",
  272.         "1: 新しいファイルを編集したい ",
  273.         "2: 通信したい ",
  274.         "3: 通信ログをみたい ",
  275.         "4: MS-DOSコマンドを実行したい ",
  276.         "9: HEatを終了したい"
  277.     )
  278.     CMD = VAL;
  279.  
  280.     if ( CMD = 0 )
  281.     {    return    (SIDEWORK)
  282.     } else if ( CMD = 1 )
  283.     {    /* [PF1] N    */
  284.         key("\\k5D00N")
  285.         return    (TEXT_EDIT)
  286.     } else if ( CMD = 2 )
  287.     {    return    (TERMINAL)
  288.     } else if ( CMD = 3 )
  289.     {    return    (BACK_LOG)
  290.     } else if ( CMD = 4 )
  291.     {    return    (MS_DOS)
  292.     } else if ( CMD = 5 )
  293.     {    /* EXIT    */
  294.         menu_yes_no(x,y,C_CYAN,"編集中のテキストは保存しますか?")
  295.         if ( VAL > 0 )
  296.         {    return    (SAVE_ALL)    /* SAVE ALL    */
  297.         } else
  298.         {    return    (HEAT_EXIT)    /* 終了    */
  299.         }
  300.     }
  301. }
  302.  
  303. /*********************************************************************
  304. /*    <SYSTEM>メニュー
  305. /*
  306. SYSTEM {
  307.     w_init()
  308.     wind_open2("SYSTEM メニュー だよン♪")
  309.     echo("\n    といいながら、\n")
  310.     echo(  "    それらしいことは何もできましぇん…\n")
  311.     wait(10)
  312.     wind_close()
  313. }
  314.  
  315.  
  316. PUT_TOWNS {
  317.     D00 = "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00"
  318.     D01 = "00 3E 00 7C 0C 01 80 00 03 FF F0 7C 18 18 19 F0"
  319.     D02 = "18 7F F0 3E 01 FF 0C 01 80 00 03 FF F1 FF 18 18"
  320.     D03 = "19 F8 18 FF F0 3E 03 83 8C 01 80 00 00 0C 03 83"
  321.     D04 = "98 18 19 98 19 C0 00 3E 07 01 CC 01 80 00 00 0C"
  322.     D05 = "07 01 CC 3C 31 9C 19 80 00 3E 06 00 CD E1 80 00"
  323.     D06 = "00 0C 06 00 CC 3C 31 8C 19 C0 00 3E 0C 00 6F F1"
  324.     D07 = "80 00 00 0C 0C 00 6C 3C 31 8E 18 FF C0 3E 0C 00"
  325.     D08 = "6E 19 80 00 00 0C 0C 00 66 66 61 86 18 7F F0 3E"
  326.     D09 = "00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 00"
  327.     D0A = "00 3E 0C 00 6C 19 9F F7 87 CC 0C 00 66 66 61 83"
  328.     D0B = "18 00 18 3E 0C 00 6C 19 8E 33 C7 8C 0C 00 63 C3"
  329.     D0C = "C1 83 98 00 18 3E 06 00 CC 19 8E 33 CB 8C 06 00"
  330.     D0D = "C3 C3 C1 81 98 00 18 3E 07 01 CC 18 0F 83 6B 8C"
  331.     D0E = "07 01 C3 C3 C1 81 D8 00 18 3E 03 83 8C 19 8E 03"
  332.     D0F = "7B 8C 03 83 81 81 81 80 D8 00 30 3E 01 FF 0C 19"
  333.     D10 = "8E 03 33 8C 01 FF 01 81 81 80 F9 FF F0 3E 00 7E"
  334.     D11 = "0C 19 9F 07 B7 CC 00 7C 01 81 81 80 79 FF C0 3E"
  335.     D0 = "\(D00) \(D01) \(D02) \(D03) \(D04) \(D05) \(D06) \(D07) \(D08)"
  336.     D1 = "\(D09) \(D0A) \(D0B) \(D0C) \(D0D) \(D0E) \(D0F) \(D10) \(D11)"
  337.  
  338.     tmp_x1 = x;
  339.     tmp_y1 = y;
  340.     expr("tmp_x2","\(x)+137")
  341.     expr("tmp_y2","\(y)+7")
  342.     graph("putblk",tmp_x1,tmp_y1,tmp_x2,tmp_y2,PSET,C_MBLACK,D0)
  343.     add("tmp_y1",8)
  344.     add("tmp_y2",8)
  345.     graph("putblk",tmp_x1,tmp_y1,tmp_x2,tmp_y2,PSET,C_MBLACK,D1)
  346. }
  347.  
  348. /*********************************************************************
  349. /*    <HELP>メニュー
  350. /*
  351. HELP {
  352.     w_init()
  353.     wind_open2("へるぷ メニュー よン♪")
  354.     x = 80;
  355.     y = 80;
  356.     PUT_TOWNS()
  357.     add("x",138)
  358.     graph("symbol",x,y, 8,16, OPAQUE,C_MBLACK,C_HWHITE, 0,0,0,0, "を見てね。")
  359.  
  360.     wait(10)
  361.     wind_close()
  362.     /*    う~ん,HELPになっていない…
  363. }
  364.  
  365. /*********************************************************************
  366. /*    プリンタ初期化時に実行される
  367. /*
  368. PRT_start {
  369.     return    (0);
  370. }
  371.  
  372. PRT_end {
  373. }
  374.  
  375.  
  376. /*********************************************************************
  377. /*
  378. /*    <設定メニュー#2>
  379. /*
  380. KEYMACRO_00 {
  381.     w_init()
  382.  
  383.     mosget("sw","x","y")
  384.     while ( 0 )
  385.     {    if ( _HEPLAY_TYPE =  0 )
  386.         {    TMP = "デフォルト"
  387.         } else if ( _HEPLAY_TYPE = 4 )
  388.         {    TMP = "カラオケ用"
  389.         } else
  390.         {    TMP = _HEPLAY_TYPE;
  391.         }
  392.         if ( TM_SEC = 0 )
  393.         {    TMP_TM = "OFF"
  394.         } else
  395.         {    TMP_TM = "\(TM_SEC) sec"
  396.         }
  397.         if ( _SCROLL_DIR = 0 )
  398.         {    _SCROLL_DIR = 1;
  399.             TMP_SR = "Normal"
  400.         } else if ( _SCROLL_DIR < 0 )
  401.         {    TMP_SR = "Reverse"
  402.             _SCROLL_DIR = -1;
  403.         } else
  404.         {    TMP_SR = "Normal";
  405.             _SCROLL_DIR = 1;
  406.         }
  407.         menu2_select(x,y, "<設定メニュー2>",
  408.             "H:HEPLAY   High-EUP Player タイプ      [\(TMP)]",
  409.             "B:BlackOut ブラックアウト・タイムの設定 [\(_BO_TIME) min]"
  410.             "T:Timer    タイマー設定                [\(TMP_TM)]",
  411.             "S:Scroll   マウス・スクロール方向の設定 [\(TMP_SR)]"
  412.          )
  413.         if ( VAL < 0 ) { return (-1) }
  414.         if ( VAL = 0 )
  415.         {    /* HEPLAY    */
  416.             inc(_HEPLAY_TYPE)
  417.             if ( _HEPLAY_TYPE > 4 )
  418.             {    _HEPLAY_TYPE = 0;
  419.             }
  420.         } else if ( VAL = 1 )
  421.         {    /* ブラックアウト    */
  422.             TMP = _BO_TIME;
  423.             menu_input("TMP",8,x,y,C_CYAN,"ブラックアウト・タイムの設定(1~60分)")
  424.             if ( VAL < 0 )
  425.             {
  426.             } else
  427.             {    expr("_BO_TIME","\(TMP)");
  428.                 if ( _BO_TIME < 0 )
  429.                 {    _BO_TIME = 0;
  430.                 } else if ( _BO_TIME > 60 )
  431.                 {    _BO_TIME = 60;
  432.                 }
  433.                 if ( _BO_TIME = 0 )
  434.                 {    RET = "\tブラックアウトを解除します。"
  435.                 } else
  436.                 {    RET = "\t\(_BO_TIME) 分間キー入力、マウス入力がなければ、\n\n\t画面を消去します。"
  437.                 }
  438.                 echo("\n\n\(RET)\n")
  439.                 wait(5)
  440.                 wind_close()
  441.                 set_blackout(_BO_TIME,"")
  442.             }
  443.         } else if ( VAL = 2 )
  444.         {    /* タイマー設定    */
  445.             TMP = TM_SEC;
  446.             menu_input("TMP",8,x,y,C_CYAN,"タイマーの設定(10~600秒)")
  447.             if ( VAL < 0 )
  448.             {    
  449.             } else
  450.             {    expr("TM_SEC","\(TMP)");
  451.                 if ( TM_SEC < 0 )
  452.                 {    TM_SEC = 0;
  453.                 } else if ( TM_SEC > 600 )
  454.                 {    TM_SEC = 600;
  455.                 }
  456.                 if ( TM_SEC = 0 )
  457.                 {    RET = "\tタイマーを解除します。"
  458.                 } else
  459.                 {    RET = "\t\(TM_SEC) 秒後にブザーを鳴らします。"
  460.                 }
  461.                 echo("\n\n\(RET)\n")
  462.                 wait(5)
  463.                 wind_close()
  464.                 set_timer( TM_SEC,"TIMER_func")
  465.             }
  466.         } else if ( VAL = 3 )
  467.         {    /* マウススクロール方向    */
  468.             if ( _SCROLL_DIR > 0 )
  469.             {    _SCROLL_DIR = -1;
  470.             } else
  471.             {    _SCROLL_DIR = 1;
  472.             }
  473.         }
  474.     }
  475. }
  476.  
  477.  
  478. /*********************************************************************
  479. /*    タイマー実行部
  480. /*
  481. TIMER_func {
  482.     while ( 0 )
  483.     {    syslin_puts(C_YELLOW,C_MBLACK,"    <<<<<<<<<< TIMER >>>>>>>>>>")
  484.         beep()
  485.         wait(1)
  486.         mosget("tm_sw","x","y")
  487.         if ( tm_sw ! 0 )
  488.         {    return
  489.         }
  490.     }
  491.     TM_SEC = 0;
  492. }
  493.  
  494. w_init {
  495.     wind_close()
  496.     wind_init()
  497. }
  498.  
  499.